[INFO] fetching crate logicaffeine-language 0.9.8...
[INFO] testing logicaffeine-language-0.9.8 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] extracting crate logicaffeine-language 0.9.8 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate logicaffeine-language 0.9.8
[INFO] finished tweaking crates.io crate logicaffeine-language 0.9.8
[INFO] tweaked toml for crates.io crate logicaffeine-language 0.9.8 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate logicaffeine-language 0.9.8 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate logicaffeine-language 0.9.8 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9c5563dd1602afe798a99c4579d71d80bd4c0afb0472a6192e5c1be79f57e46a
[INFO] running `Command { std: "docker" "start" "-a" "9c5563dd1602afe798a99c4579d71d80bd4c0afb0472a6192e5c1be79f57e46a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9c5563dd1602afe798a99c4579d71d80bd4c0afb0472a6192e5c1be79f57e46a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9c5563dd1602afe798a99c4579d71d80bd4c0afb0472a6192e5c1be79f57e46a", kill_on_drop: false }`
[INFO] [stdout] 9c5563dd1602afe798a99c4579d71d80bd4c0afb0472a6192e5c1be79f57e46a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9b78b0fcd90f5d1d77c4d77aafd9f9fec2396200dcec6f5ed89c02f7fcdef8e1
[INFO] running `Command { std: "docker" "start" "-a" "9b78b0fcd90f5d1d77c4d77aafd9f9fec2396200dcec6f5ed89c02f7fcdef8e1", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling bumpalo v3.20.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling logicaffeine-base v0.9.8
[INFO] [stderr]    Compiling logicaffeine-kernel v0.9.8
[INFO] [stderr]    Compiling logicaffeine-lexicon v0.9.8
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling logicaffeine-proof v0.9.8
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling logicaffeine-language v0.9.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `regular` is never read
[INFO] [stdout]   --> build.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct VerbDefinition {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 62 |     regular: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `regular` is never read
[INFO] [stdout]    --> build.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct AdjectiveDefinition {
[INFO] [stdout]     |        ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 120 |     regular: bool,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `features` is never read
[INFO] [stdout]    --> build.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct MweEntry {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     features: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Gender`
[INFO] [stdout]   --> src/parser/clause.rs:25:27
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::drs::{BoxType, Gender, Number};
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]   --> src/parser/verb.rs:38:31
[INFO] [stdout]    |
[INFO] [stdout] 38 | use crate::token::{FocusKind, Span, TokenType};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BoxType`
[INFO] [stdout]   --> src/parser/mod.rs:80:23
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::drs::{Drs, BoxType, WorldState};
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ast::stmt::SelectBranch`
[INFO] [stdout]     --> src/parser/mod.rs:3371:13
[INFO] [stdout]      |
[INFO] [stdout] 3371 |         use crate::ast::stmt::SelectBranch;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ast::Expr`
[INFO] [stdout]     --> src/parser/mod.rs:4422:13
[INFO] [stdout]      |
[INFO] [stdout] 4422 |         use crate::ast::Expr;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]    --> src/compile.rs:907:18
[INFO] [stdout]     |
[INFO] [stdout] 907 | use crate::ast::{self, Stmt};
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::dependencies::scan_dependencies`
[INFO] [stdout]   --> src/analysis/discovery.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use super::dependencies::scan_dependencies;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]      --> /opt/rustwide/target/debug/build/logicaffeine-language-186dfe0fd3a584f4/out/lexicon_data.rs:10319:9
[INFO] [stdout]       |
[INFO] [stdout] 10175 |         "speaker" => Some(crate::lexicon::Sort::Physical),
[INFO] [stdout]       |         --------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 10319 |         "speaker" => Some(crate::lexicon::Sort::Human),
[INFO] [stdout]       |         ^^^^^^^^^ no value can reach this
[INFO] [stdout]       |
[INFO] [stdout]       = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/parser/noun.rs:285:17
[INFO] [stdout]     |
[INFO] [stdout] 285 |             let symbol = capitalize_first(noun_str);
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number`
[INFO] [stdout]    --> src/parser/noun.rs:286:17
[INFO] [stdout]     |
[INFO] [stdout] 286 |             let number = if noun_str.ends_with('s') && !noun_str.ends_with("ss") {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unknown`
[INFO] [stdout]     --> src/parser/verb.rs:1117:17
[INFO] [stdout]      |
[INFO] [stdout] 1117 |             let unknown = self.interner.intern("?");
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]     --> src/parser/mod.rs:5336:48
[INFO] [stdout]      |
[INFO] [stdout] 5336 |                 if let TokenType::CalendarUnit(unit) = self.peek().kind {
[INFO] [stdout]      |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `was_definite_article`
[INFO] [stdout]     --> src/parser/mod.rs:8028:42
[INFO] [stdout]      |
[INFO] [stdout] 8028 |                     let (obj_quantifier, was_definite_article) = if self.check_npi_quantifier() {
[INFO] [stdout]      |                                          ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_definite_article`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unknown`
[INFO] [stdout]     --> src/parser/mod.rs:8419:17
[INFO] [stdout]      |
[INFO] [stdout] 8419 |             let unknown = self.interner.intern("?");
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_person`
[INFO] [stdout]     --> src/parser/mod.rs:9530:32
[INFO] [stdout]      |
[INFO] [stdout] 9530 |         let (restriction_name, is_person) = match npi_token {
[INFO] [stdout]      |                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_person`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_arena`
[INFO] [stdout]    --> src/semantics/axioms.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_arena`
[INFO] [stdout]    --> src/semantics/axioms.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/transpile.rs:178:31
[INFO] [stdout]     |
[INFO] [stdout] 178 |             Term::Proposition(expr) => write!(w, "[proposition]"),
[INFO] [stdout]     |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `subject_type`
[INFO] [stdout]    --> src/analysis/discovery.rs:304:42
[INFO] [stdout]     |
[INFO] [stdout] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_subject_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type`
[INFO] [stdout]    --> src/analysis/discovery.rs:304:64
[INFO] [stdout]     |
[INFO] [stdout] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `escape_body_ranges` is never read
[INFO] [stdout]   --> src/lexer.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct LineLexer<'a> {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     escape_body_ranges: Vec<(usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_in_escape_body` is never used
[INFO] [stdout]    --> src/lexer.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl<'a> LineLexer<'a> {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn is_in_escape_body(&self, pos: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `measure_next_line_indent` is never used
[INFO] [stdout]     --> src/lexer.rs:1470:8
[INFO] [stdout]      |
[INFO] [stdout]  355 | impl<'a> Lexer<'a> {
[INFO] [stdout]      | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1470 |     fn measure_next_line_indent(&self, from_pos: usize) -> Option<usize> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_cardinal` is never read
[INFO] [stdout]    --> src/parser/mod.rs:284:16
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub struct Parser<'a, 'ctx, 'int> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub(super) pending_cardinal: Option<u32>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `try_parse_binary_op` and `check_any` are never used
[INFO] [stdout]     --> src/parser/mod.rs:6124:8
[INFO] [stdout]      |
[INFO] [stdout]  303 | impl<'a, 'ctx, 'int> Parser<'a, 'ctx, 'int> {
[INFO] [stdout]      | ------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 6124 |     fn try_parse_binary_op(&mut self) -> Option<BinaryOpKind> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9666 |     fn check_any(&self, kinds: &[TokenType]) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COPULAS` is never used
[INFO] [stdout]  --> src/parser/common.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const COPULAS: &[TokenType] = &[
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `group_by_island` is never used
[INFO] [stdout]    --> src/lambda.rs:469:4
[INFO] [stdout]     |
[INFO] [stdout] 469 | fn group_by_island<'a>(quantifiers: Vec<QuantifierInfo<'a>>) -> Vec<Vec<QuantifierInfo<'a>>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_quantifiers` is never used
[INFO] [stdout]    --> src/lambda.rs:582:4
[INFO] [stdout]     |
[INFO] [stdout] 582 | fn extract_quantifiers<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rebuild_with_scope_order` is never used
[INFO] [stdout]    --> src/lambda.rs:613:4
[INFO] [stdout]     |
[INFO] [stdout] 613 | fn rebuild_with_scope_order<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verb` is never read
[INFO] [stdout]    --> src/lambda.rs:828:5
[INFO] [stdout]     |
[INFO] [stdout] 827 | struct IntensionalContext {
[INFO] [stdout]     |        ------------------ field in this struct
[INFO] [stdout] 828 |     verb: Symbol,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IntensionalContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `parse_enum_variants`, `parse_variant_fields_natural`, `parse_variant_fields_concise`, `parse_struct_fields`, and `consume_field_type` are never used
[INFO] [stdout]    --> src/analysis/discovery.rs:636:8
[INFO] [stdout]     |
[INFO] [stdout]  45 | impl<'a> DiscoveryPass<'a> {
[INFO] [stdout]     | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 636 |     fn parse_enum_variants(&mut self) -> Vec<VariantDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 703 |     fn parse_variant_fields_natural(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 749 |     fn parse_variant_fields_concise(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 842 |     fn parse_struct_fields(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 847 |     fn consume_field_type(&mut self) -> FieldType {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 31.65s
[INFO] running `Command { std: "docker" "inspect" "9b78b0fcd90f5d1d77c4d77aafd9f9fec2396200dcec6f5ed89c02f7fcdef8e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b78b0fcd90f5d1d77c4d77aafd9f9fec2396200dcec6f5ed89c02f7fcdef8e1", kill_on_drop: false }`
[INFO] [stdout] 9b78b0fcd90f5d1d77c4d77aafd9f9fec2396200dcec6f5ed89c02f7fcdef8e1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] be20d9e92c4d8c4705be7a55e2c10bc1fea0fd0c95da00d25e98fcc1ce13ebc2
[INFO] running `Command { std: "docker" "start" "-a" "be20d9e92c4d8c4705be7a55e2c10bc1fea0fd0c95da00d25e98fcc1ce13ebc2", kill_on_drop: false }`
[INFO] [stdout] warning: field `regular` is never read
[INFO] [stdout]   --> build.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct VerbDefinition {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 62 |     regular: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `regular` is never read
[INFO] [stdout]    --> build.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct AdjectiveDefinition {
[INFO] [stdout]     |        ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 120 |     regular: bool,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `features` is never read
[INFO] [stdout]    --> build.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct MweEntry {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     features: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Gender`
[INFO] [stdout]   --> src/parser/clause.rs:25:27
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::drs::{BoxType, Gender, Number};
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]   --> src/parser/verb.rs:38:31
[INFO] [stdout]    |
[INFO] [stdout] 38 | use crate::token::{FocusKind, Span, TokenType};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BoxType`
[INFO] [stdout]   --> src/parser/mod.rs:80:23
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::drs::{Drs, BoxType, WorldState};
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ast::stmt::SelectBranch`
[INFO] [stdout]     --> src/parser/mod.rs:3371:13
[INFO] [stdout]      |
[INFO] [stdout] 3371 |         use crate::ast::stmt::SelectBranch;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ast::Expr`
[INFO] [stdout]     --> src/parser/mod.rs:4422:13
[INFO] [stdout]      |
[INFO] [stdout] 4422 |         use crate::ast::Expr;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]    --> src/compile.rs:907:18
[INFO] [stdout]     |
[INFO] [stdout] 907 | use crate::ast::{self, Stmt};
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::dependencies::scan_dependencies`
[INFO] [stdout]   --> src/analysis/discovery.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use super::dependencies::scan_dependencies;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]      --> /opt/rustwide/target/debug/build/logicaffeine-language-186dfe0fd3a584f4/out/lexicon_data.rs:10319:9
[INFO] [stdout]       |
[INFO] [stdout] 10175 |         "speaker" => Some(crate::lexicon::Sort::Physical),
[INFO] [stdout]       |         --------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 10319 |         "speaker" => Some(crate::lexicon::Sort::Human),
[INFO] [stdout]       |         ^^^^^^^^^ no value can reach this
[INFO] [stdout]       |
[INFO] [stdout]       = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/parser/noun.rs:285:17
[INFO] [stdout]     |
[INFO] [stdout] 285 |             let symbol = capitalize_first(noun_str);
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number`
[INFO] [stdout]    --> src/parser/noun.rs:286:17
[INFO] [stdout]     |
[INFO] [stdout] 286 |             let number = if noun_str.ends_with('s') && !noun_str.ends_with("ss") {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unknown`
[INFO] [stdout]     --> src/parser/verb.rs:1117:17
[INFO] [stdout]      |
[INFO] [stdout] 1117 |             let unknown = self.interner.intern("?");
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]     --> src/parser/mod.rs:5336:48
[INFO] [stdout]      |
[INFO] [stdout] 5336 |                 if let TokenType::CalendarUnit(unit) = self.peek().kind {
[INFO] [stdout]      |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `was_definite_article`
[INFO] [stdout]     --> src/parser/mod.rs:8028:42
[INFO] [stdout]      |
[INFO] [stdout] 8028 |                     let (obj_quantifier, was_definite_article) = if self.check_npi_quantifier() {
[INFO] [stdout]      |                                          ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_definite_article`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unknown`
[INFO] [stdout]     --> src/parser/mod.rs:8419:17
[INFO] [stdout]      |
[INFO] [stdout] 8419 |             let unknown = self.interner.intern("?");
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_person`
[INFO] [stdout]     --> src/parser/mod.rs:9530:32
[INFO] [stdout]      |
[INFO] [stdout] 9530 |         let (restriction_name, is_person) = match npi_token {
[INFO] [stdout]      |                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_person`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_arena`
[INFO] [stdout]    --> src/semantics/axioms.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_arena`
[INFO] [stdout]    --> src/semantics/axioms.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/transpile.rs:178:31
[INFO] [stdout]     |
[INFO] [stdout] 178 |             Term::Proposition(expr) => write!(w, "[proposition]"),
[INFO] [stdout]     |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling logicaffeine-language v0.9.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `subject_type`
[INFO] [stdout]    --> src/analysis/discovery.rs:304:42
[INFO] [stdout]     |
[INFO] [stdout] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_subject_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type`
[INFO] [stdout]    --> src/analysis/discovery.rs:304:64
[INFO] [stdout]     |
[INFO] [stdout] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `escape_body_ranges` is never read
[INFO] [stdout]   --> src/lexer.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct LineLexer<'a> {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     escape_body_ranges: Vec<(usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_in_escape_body` is never used
[INFO] [stdout]    --> src/lexer.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl<'a> LineLexer<'a> {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn is_in_escape_body(&self, pos: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `measure_next_line_indent` is never used
[INFO] [stdout]     --> src/lexer.rs:1470:8
[INFO] [stdout]      |
[INFO] [stdout]  355 | impl<'a> Lexer<'a> {
[INFO] [stdout]      | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1470 |     fn measure_next_line_indent(&self, from_pos: usize) -> Option<usize> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_cardinal` is never read
[INFO] [stdout]    --> src/parser/mod.rs:284:16
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub struct Parser<'a, 'ctx, 'int> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub(super) pending_cardinal: Option<u32>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `try_parse_binary_op` and `check_any` are never used
[INFO] [stdout]     --> src/parser/mod.rs:6124:8
[INFO] [stdout]      |
[INFO] [stdout]  303 | impl<'a, 'ctx, 'int> Parser<'a, 'ctx, 'int> {
[INFO] [stdout]      | ------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 6124 |     fn try_parse_binary_op(&mut self) -> Option<BinaryOpKind> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9666 |     fn check_any(&self, kinds: &[TokenType]) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COPULAS` is never used
[INFO] [stdout]  --> src/parser/common.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const COPULAS: &[TokenType] = &[
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `group_by_island` is never used
[INFO] [stdout]    --> src/lambda.rs:469:4
[INFO] [stdout]     |
[INFO] [stdout] 469 | fn group_by_island<'a>(quantifiers: Vec<QuantifierInfo<'a>>) -> Vec<Vec<QuantifierInfo<'a>>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_quantifiers` is never used
[INFO] [stdout]    --> src/lambda.rs:582:4
[INFO] [stdout]     |
[INFO] [stdout] 582 | fn extract_quantifiers<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rebuild_with_scope_order` is never used
[INFO] [stdout]    --> src/lambda.rs:613:4
[INFO] [stdout]     |
[INFO] [stdout] 613 | fn rebuild_with_scope_order<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verb` is never read
[INFO] [stdout]    --> src/lambda.rs:828:5
[INFO] [stdout]     |
[INFO] [stdout] 827 | struct IntensionalContext {
[INFO] [stdout]     |        ------------------ field in this struct
[INFO] [stdout] 828 |     verb: Symbol,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IntensionalContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `parse_enum_variants`, `parse_variant_fields_natural`, `parse_variant_fields_concise`, `parse_struct_fields`, and `consume_field_type` are never used
[INFO] [stdout]    --> src/analysis/discovery.rs:636:8
[INFO] [stdout]     |
[INFO] [stdout]  45 | impl<'a> DiscoveryPass<'a> {
[INFO] [stdout]     | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 636 |     fn parse_enum_variants(&mut self) -> Vec<VariantDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 703 |     fn parse_variant_fields_natural(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 749 |     fn parse_variant_fields_concise(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 842 |     fn parse_struct_fields(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 847 |     fn consume_field_type(&mut self) -> FieldType {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Gender`
[INFO] [stdout]   --> src/parser/clause.rs:25:27
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::drs::{BoxType, Gender, Number};
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]   --> src/parser/verb.rs:38:31
[INFO] [stdout]    |
[INFO] [stdout] 38 | use crate::token::{FocusKind, Span, TokenType};
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BoxType`
[INFO] [stdout]   --> src/parser/mod.rs:80:23
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::drs::{Drs, BoxType, WorldState};
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ast::stmt::SelectBranch`
[INFO] [stdout]     --> src/parser/mod.rs:3371:13
[INFO] [stdout]      |
[INFO] [stdout] 3371 |         use crate::ast::stmt::SelectBranch;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ast::Expr`
[INFO] [stdout]     --> src/parser/mod.rs:4422:13
[INFO] [stdout]      |
[INFO] [stdout] 4422 |         use crate::ast::Expr;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]    --> src/compile.rs:907:18
[INFO] [stdout]     |
[INFO] [stdout] 907 | use crate::ast::{self, Stmt};
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::dependencies::scan_dependencies`
[INFO] [stdout]   --> src/analysis/discovery.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use super::dependencies::scan_dependencies;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]      --> /opt/rustwide/target/debug/build/logicaffeine-language-186dfe0fd3a584f4/out/lexicon_data.rs:10319:9
[INFO] [stdout]       |
[INFO] [stdout] 10175 |         "speaker" => Some(crate::lexicon::Sort::Physical),
[INFO] [stdout]       |         --------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 10319 |         "speaker" => Some(crate::lexicon::Sort::Human),
[INFO] [stdout]       |         ^^^^^^^^^ no value can reach this
[INFO] [stdout]       |
[INFO] [stdout]       = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/parser/noun.rs:285:17
[INFO] [stdout]     |
[INFO] [stdout] 285 |             let symbol = capitalize_first(noun_str);
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number`
[INFO] [stdout]    --> src/parser/noun.rs:286:17
[INFO] [stdout]     |
[INFO] [stdout] 286 |             let number = if noun_str.ends_with('s') && !noun_str.ends_with("ss") {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unknown`
[INFO] [stdout]     --> src/parser/verb.rs:1117:17
[INFO] [stdout]      |
[INFO] [stdout] 1117 |             let unknown = self.interner.intern("?");
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]     --> src/parser/mod.rs:5336:48
[INFO] [stdout]      |
[INFO] [stdout] 5336 |                 if let TokenType::CalendarUnit(unit) = self.peek().kind {
[INFO] [stdout]      |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_unit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `was_definite_article`
[INFO] [stdout]     --> src/parser/mod.rs:8028:42
[INFO] [stdout]      |
[INFO] [stdout] 8028 |                     let (obj_quantifier, was_definite_article) = if self.check_npi_quantifier() {
[INFO] [stdout]      |                                          ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_definite_article`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unknown`
[INFO] [stdout]     --> src/parser/mod.rs:8419:17
[INFO] [stdout]      |
[INFO] [stdout] 8419 |             let unknown = self.interner.intern("?");
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_person`
[INFO] [stdout]     --> src/parser/mod.rs:9530:32
[INFO] [stdout]      |
[INFO] [stdout] 9530 |         let (restriction_name, is_person) = match npi_token {
[INFO] [stdout]      |                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_person`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_arena`
[INFO] [stdout]    --> src/semantics/axioms.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_arena`
[INFO] [stdout]    --> src/semantics/axioms.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/transpile.rs:178:31
[INFO] [stdout]     |
[INFO] [stdout] 178 |             Term::Proposition(expr) => write!(w, "[proposition]"),
[INFO] [stdout]     |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `subject_type`
[INFO] [stdout]    --> src/analysis/discovery.rs:304:42
[INFO] [stdout]     |
[INFO] [stdout] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_subject_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `object_type`
[INFO] [stdout]    --> src/analysis/discovery.rs:304:64
[INFO] [stdout]     |
[INFO] [stdout] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `escape_body_ranges` is never read
[INFO] [stdout]   --> src/lexer.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct LineLexer<'a> {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |     escape_body_ranges: Vec<(usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_in_escape_body` is never used
[INFO] [stdout]    --> src/lexer.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl<'a> LineLexer<'a> {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn is_in_escape_body(&self, pos: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `measure_next_line_indent` is never used
[INFO] [stdout]     --> src/lexer.rs:1470:8
[INFO] [stdout]      |
[INFO] [stdout]  355 | impl<'a> Lexer<'a> {
[INFO] [stdout]      | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1470 |     fn measure_next_line_indent(&self, from_pos: usize) -> Option<usize> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_cardinal` is never read
[INFO] [stdout]    --> src/parser/mod.rs:284:16
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub struct Parser<'a, 'ctx, 'int> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub(super) pending_cardinal: Option<u32>,
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_parse_binary_op` is never used
[INFO] [stdout]     --> src/parser/mod.rs:6124:8
[INFO] [stdout]      |
[INFO] [stdout]  303 | impl<'a, 'ctx, 'int> Parser<'a, 'ctx, 'int> {
[INFO] [stdout]      | ------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 6124 |     fn try_parse_binary_op(&mut self) -> Option<BinaryOpKind> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COPULAS` is never used
[INFO] [stdout]  --> src/parser/common.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const COPULAS: &[TokenType] = &[
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `group_by_island` is never used
[INFO] [stdout]    --> src/lambda.rs:469:4
[INFO] [stdout]     |
[INFO] [stdout] 469 | fn group_by_island<'a>(quantifiers: Vec<QuantifierInfo<'a>>) -> Vec<Vec<QuantifierInfo<'a>>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_quantifiers` is never used
[INFO] [stdout]    --> src/lambda.rs:582:4
[INFO] [stdout]     |
[INFO] [stdout] 582 | fn extract_quantifiers<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rebuild_with_scope_order` is never used
[INFO] [stdout]    --> src/lambda.rs:613:4
[INFO] [stdout]     |
[INFO] [stdout] 613 | fn rebuild_with_scope_order<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verb` is never read
[INFO] [stdout]    --> src/lambda.rs:828:5
[INFO] [stdout]     |
[INFO] [stdout] 827 | struct IntensionalContext {
[INFO] [stdout]     |        ------------------ field in this struct
[INFO] [stdout] 828 |     verb: Symbol,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IntensionalContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `parse_enum_variants`, `parse_variant_fields_natural`, `parse_variant_fields_concise`, `parse_struct_fields`, and `consume_field_type` are never used
[INFO] [stdout]    --> src/analysis/discovery.rs:636:8
[INFO] [stdout]     |
[INFO] [stdout]  45 | impl<'a> DiscoveryPass<'a> {
[INFO] [stdout]     | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 636 |     fn parse_enum_variants(&mut self) -> Vec<VariantDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 703 |     fn parse_variant_fields_natural(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 749 |     fn parse_variant_fields_concise(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 842 |     fn parse_struct_fields(&mut self) -> Vec<FieldDef> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 847 |     fn consume_field_type(&mut self) -> FieldType {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 9.87s
[INFO] running `Command { std: "docker" "inspect" "be20d9e92c4d8c4705be7a55e2c10bc1fea0fd0c95da00d25e98fcc1ce13ebc2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be20d9e92c4d8c4705be7a55e2c10bc1fea0fd0c95da00d25e98fcc1ce13ebc2", kill_on_drop: false }`
[INFO] [stdout] be20d9e92c4d8c4705be7a55e2c10bc1fea0fd0c95da00d25e98fcc1ce13ebc2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b6fb234b47c2063c88f09881a3477697490a24705ef5c3adc7519f83fc61983f
[INFO] running `Command { std: "docker" "start" "-a" "b6fb234b47c2063c88f09881a3477697490a24705ef5c3adc7519f83fc61983f", kill_on_drop: false }`
[INFO] [stderr] warning: field `regular` is never read
[INFO] [stderr]   --> build.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 56 | struct VerbDefinition {
[INFO] [stderr]    |        -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 62 |     regular: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `regular` is never read
[INFO] [stderr]    --> build.rs:120:5
[INFO] [stderr]     |
[INFO] [stderr] 117 | struct AdjectiveDefinition {
[INFO] [stderr]     |        ------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 120 |     regular: bool,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `features` is never read
[INFO] [stderr]    --> build.rs:140:5
[INFO] [stderr]     |
[INFO] [stderr] 133 | struct MweEntry {
[INFO] [stderr]     |        -------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 140 |     features: Vec<String>,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `logicaffeine-language` (build script) generated 3 warnings
[INFO] [stderr] warning: unused import: `Gender`
[INFO] [stderr]   --> src/parser/clause.rs:25:27
[INFO] [stderr]    |
[INFO] [stderr] 25 | use crate::drs::{BoxType, Gender, Number};
[INFO] [stderr]    |                           ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Span`
[INFO] [stderr]   --> src/parser/verb.rs:38:31
[INFO] [stderr]    |
[INFO] [stderr] 38 | use crate::token::{FocusKind, Span, TokenType};
[INFO] [stderr]    |                               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BoxType`
[INFO] [stderr]   --> src/parser/mod.rs:80:23
[INFO] [stderr]    |
[INFO] [stderr] 80 | use crate::drs::{Drs, BoxType, WorldState};
[INFO] [stderr]    |                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::ast::stmt::SelectBranch`
[INFO] [stderr]     --> src/parser/mod.rs:3371:13
[INFO] [stderr]      |
[INFO] [stderr] 3371 |         use crate::ast::stmt::SelectBranch;
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::ast::Expr`
[INFO] [stderr]     --> src/parser/mod.rs:4422:13
[INFO] [stderr]      |
[INFO] [stderr] 4422 |         use crate::ast::Expr;
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]    --> src/compile.rs:907:18
[INFO] [stderr]     |
[INFO] [stderr] 907 | use crate::ast::{self, Stmt};
[INFO] [stderr]     |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::dependencies::scan_dependencies`
[INFO] [stderr]   --> src/analysis/discovery.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | use super::dependencies::scan_dependencies;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]      --> /opt/rustwide/target/debug/build/logicaffeine-language-186dfe0fd3a584f4/out/lexicon_data.rs:10319:9
[INFO] [stderr]       |
[INFO] [stderr] 10175 |         "speaker" => Some(crate::lexicon::Sort::Physical),
[INFO] [stderr]       |         --------- matches all the relevant values
[INFO] [stderr] ...
[INFO] [stderr] 10319 |         "speaker" => Some(crate::lexicon::Sort::Human),
[INFO] [stderr]       |         ^^^^^^^^^ no value can reach this
[INFO] [stderr]       |
[INFO] [stderr]       = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `symbol`
[INFO] [stderr]    --> src/parser/noun.rs:285:17
[INFO] [stderr]     |
[INFO] [stderr] 285 |             let symbol = capitalize_first(noun_str);
[INFO] [stderr]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `number`
[INFO] [stderr]    --> src/parser/noun.rs:286:17
[INFO] [stderr]     |
[INFO] [stderr] 286 |             let number = if noun_str.ends_with('s') && !noun_str.ends_with("ss") {
[INFO] [stderr]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_number`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `unknown`
[INFO] [stderr]     --> src/parser/verb.rs:1117:17
[INFO] [stderr]      |
[INFO] [stderr] 1117 |             let unknown = self.interner.intern("?");
[INFO] [stderr]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `unit`
[INFO] [stderr]     --> src/parser/mod.rs:5336:48
[INFO] [stderr]      |
[INFO] [stderr] 5336 |                 if let TokenType::CalendarUnit(unit) = self.peek().kind {
[INFO] [stderr]      |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_unit`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `was_definite_article`
[INFO] [stderr]     --> src/parser/mod.rs:8028:42
[INFO] [stderr]      |
[INFO] [stderr] 8028 |                     let (obj_quantifier, was_definite_article) = if self.check_npi_quantifier() {
[INFO] [stderr]      |                                          ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_was_definite_article`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `unknown`
[INFO] [stderr]     --> src/parser/mod.rs:8419:17
[INFO] [stderr]      |
[INFO] [stderr] 8419 |             let unknown = self.interner.intern("?");
[INFO] [stderr]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unknown`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_person`
[INFO] [stderr]     --> src/parser/mod.rs:9530:32
[INFO] [stderr]      |
[INFO] [stderr] 9530 |         let (restriction_name, is_person) = match npi_token {
[INFO] [stderr]      |                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_person`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `term_arena`
[INFO] [stderr]    --> src/semantics/axioms.rs:221:5
[INFO] [stderr]     |
[INFO] [stderr] 221 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stderr]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `term_arena`
[INFO] [stderr]    --> src/semantics/axioms.rs:250:5
[INFO] [stderr]     |
[INFO] [stderr] 250 |     term_arena: &'a Arena<Term<'a>>,
[INFO] [stderr]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_arena`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `expr`
[INFO] [stderr]    --> src/transpile.rs:178:31
[INFO] [stderr]     |
[INFO] [stderr] 178 |             Term::Proposition(expr) => write!(w, "[proposition]"),
[INFO] [stderr]     |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `subject_type`
[INFO] [stderr]    --> src/analysis/discovery.rs:304:42
[INFO] [stderr]     |
[INFO] [stderr] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_subject_type`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `object_type`
[INFO] [stderr]    --> src/analysis/discovery.rs:304:64
[INFO] [stderr]     |
[INFO] [stderr] 304 |     fn parse_atomic_condition(&mut self, subject_type: Symbol, object_type: Option<Symbol>) -> PolicyCondition {
[INFO] [stderr]     |                                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_type`
[INFO] [stderr] 
[INFO] [stderr] warning: field `escape_body_ranges` is never read
[INFO] [stderr]   --> src/lexer.rs:78:5
[INFO] [stderr]    |
[INFO] [stderr] 62 | pub struct LineLexer<'a> {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 78 |     escape_body_ranges: Vec<(usize, usize)>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_in_escape_body` is never used
[INFO] [stderr]    --> src/lexer.rs:117:8
[INFO] [stderr]     |
[INFO] [stderr]  81 | impl<'a> LineLexer<'a> {
[INFO] [stderr]     | ---------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 117 |     fn is_in_escape_body(&self, pos: usize) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `measure_next_line_indent` is never used
[INFO] [stderr]     --> src/lexer.rs:1470:8
[INFO] [stderr]      |
[INFO] [stderr]  355 | impl<'a> Lexer<'a> {
[INFO] [stderr]      | ------------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1470 |     fn measure_next_line_indent(&self, from_pos: usize) -> Option<usize> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `pending_cardinal` is never read
[INFO] [stderr]    --> src/parser/mod.rs:284:16
[INFO] [stderr]     |
[INFO] [stderr] 252 | pub struct Parser<'a, 'ctx, 'int> {
[INFO] [stderr]     |            ------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 284 |     pub(super) pending_cardinal: Option<u32>,
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `try_parse_binary_op` and `check_any` are never used
[INFO] [stderr]     --> src/parser/mod.rs:6124:8
[INFO] [stderr]      |
[INFO] [stderr]  303 | impl<'a, 'ctx, 'int> Parser<'a, 'ctx, 'int> {
[INFO] [stderr]      | ------------------------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 6124 |     fn try_parse_binary_op(&mut self) -> Option<BinaryOpKind> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 9666 |     fn check_any(&self, kinds: &[TokenType]) -> bool {
[INFO] [stderr]      |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `COPULAS` is never used
[INFO] [stderr]  --> src/parser/common.rs:9:11
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub const COPULAS: &[TokenType] = &[
[INFO] [stderr]   |           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `group_by_island` is never used
[INFO] [stderr]    --> src/lambda.rs:469:4
[INFO] [stderr]     |
[INFO] [stderr] 469 | fn group_by_island<'a>(quantifiers: Vec<QuantifierInfo<'a>>) -> Vec<Vec<QuantifierInfo<'a>>> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `extract_quantifiers` is never used
[INFO] [stderr]    --> src/lambda.rs:582:4
[INFO] [stderr]     |
[INFO] [stderr] 582 | fn extract_quantifiers<'a>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rebuild_with_scope_order` is never used
[INFO] [stderr]    --> src/lambda.rs:613:4
[INFO] [stderr]     |
[INFO] [stderr] 613 | fn rebuild_with_scope_order<'a>(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `verb` is never read
[INFO] [stderr]    --> src/lambda.rs:828:5
[INFO] [stderr]     |
[INFO] [stderr] 827 | struct IntensionalContext {
[INFO] [stderr]     |        ------------------ field in this struct
[INFO] [stderr] 828 |     verb: Symbol,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `IntensionalContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `parse_enum_variants`, `parse_variant_fields_natural`, `parse_variant_fields_concise`, `parse_struct_fields`, and `consume_field_type` are never used
[INFO] [stderr]    --> src/analysis/discovery.rs:636:8
[INFO] [stderr]     |
[INFO] [stderr]  45 | impl<'a> DiscoveryPass<'a> {
[INFO] [stderr]     | -------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 636 |     fn parse_enum_variants(&mut self) -> Vec<VariantDef> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 703 |     fn parse_variant_fields_natural(&mut self) -> Vec<FieldDef> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 749 |     fn parse_variant_fields_concise(&mut self) -> Vec<FieldDef> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 842 |     fn parse_struct_fields(&mut self) -> Vec<FieldDef> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 847 |     fn consume_field_type(&mut self) -> FieldType {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `try_parse_binary_op` is never used
[INFO] [stderr]     --> src/parser/mod.rs:6124:8
[INFO] [stderr]      |
[INFO] [stderr]  303 | impl<'a, 'ctx, 'int> Parser<'a, 'ctx, 'int> {
[INFO] [stderr]      | ------------------------------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 6124 |     fn try_parse_binary_op(&mut self) -> Option<BinaryOpKind> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `logicaffeine-language` (lib) generated 31 warnings (run `cargo fix --lib -p logicaffeine-language` to apply 19 suggestions)
[INFO] [stderr] warning: `logicaffeine-language` (lib test) generated 31 warnings (30 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/logicaffeine_language-3ab63cb39ec0bc00)
[INFO] [stdout] 
[INFO] [stdout] running 180 tests
[INFO] [stdout] test analysis::dependencies::tests::basic_dependency_scanning ... ok
[INFO] [stdout] test analysis::dependencies::tests::handles_https_urls ... ok
[INFO] [stdout] test analysis::dependencies::tests::handles_spaces_in_alias ... ok
[INFO] [stdout] test analysis::dependencies::tests::ignores_links_after_abstract ... ok
[INFO] [stdout] test analysis::dependencies::tests::handles_multiple_links_on_one_line ... ok
[INFO] [stdout] test analysis::dependencies::tests::multiline_abstract ... ok
[INFO] [stdout] test analysis::dependencies::tests::no_dependencies_without_abstract ... ok
[INFO] [stdout] test analysis::policy::tests::registry_stores_predicates ... ok
[INFO] [stdout] test analysis::registry::tests::registry_stores_and_retrieves ... ok
[INFO] [stdout] test arena_ctx::tests::aspectual_builder_creates_aspectual ... ok
[INFO] [stdout] test arena_ctx::tests::binary_builder_creates_binary_op ... ok
[INFO] [stdout] test analysis::discovery::tests::discovery_parses_lww_int_field ... ok
[INFO] [stdout] test analysis::discovery::tests::discovery_parses_portable_enum ... ok
[INFO] [stdout] test analysis::discovery::tests::discovery_finds_generic_in_definition_block ... ok
[INFO] [stdout] test analysis::discovery::tests::discovery_parses_struct_with_fields ... ok
[INFO] [stdout] test analysis::discovery::tests::discovery_works_with_markdown_header ... ok
[INFO] [stdout] test analysis::policy::tests::registry_stores_capabilities ... ok
[INFO] [stdout] test arena_ctx::tests::quantifier_builder_creates_quantifier ... ok
[INFO] [stdout] test arena_ctx::tests::temporal_builder_creates_temporal ... ok
[INFO] [stdout] test arena_ctx::tests::unary_builder_creates_unary_op ... ok
[INFO] [stdout] test ast::logic::size_tests::test_ast_node_sizes ... ok
[INFO] [stdout] test compile::tests::test_compile_simple_sentence ... ok
[INFO] [stdout] test arena_ctx::tests::modal_builder_creates_modal ... ok
[INFO] [stdout] test debug::tests::expr_predicate_display ... ok
[INFO] [stdout] test debug::tests::expr_quantifier_display ... ok
[INFO] [stdout] test debug::tests::expr_temporal_display ... ok
[INFO] [stdout] test compile::tests::test_compile_all_scopes ... ok
[INFO] [stdout] test debug::tests::expr_modal_display ... ok
[INFO] [stdout] test debug::tests::symbol_display_with_interner ... ok
[INFO] [stdout] test compile::tests::test_compile_with_unicode_format ... ok
[INFO] [stdout] test debug::tests::expr_binary_op_display ... ok
[INFO] [stdout] test debug::tests::expr_atom_display ... ok
[INFO] [stdout] test debug::tests::expr_lambda_display ... ok
[INFO] [stdout] test debug::tests::symbol_empty_displays_empty ... ok
[INFO] [stdout] test debug::tests::term_constant_display ... ok
[INFO] [stdout] test debug::tests::term_function_display ... ok
[INFO] [stdout] test debug::tests::debug_world_works_with_dbg_pattern ... ok
[INFO] [stdout] test debug::tests::term_group_display ... ok
[INFO] [stdout] test debug::tests::term_possessed_display ... ok
[INFO] [stdout] test debug::tests::term_variable_display ... ok
[INFO] [stdout] test drs::tests::drs_conditional_antecedent_accessible_from_consequent ... ok
[INFO] [stdout] test drs::tests::drs_enter_exit_box ... ok
[INFO] [stdout] test drs::tests::drs_negation_blocks_accessibility ... ok
[INFO] [stdout] test drs::tests::drs_new_has_main_box ... ok
[INFO] [stdout] test drs::tests::drs_pronoun_resolution_marks_used ... ok
[INFO] [stdout] test drs::tests::referent_source_universal_force ... ok
[INFO] [stdout] test drs::tests::drs_get_universal_referents ... ok
[INFO] [stdout] test drs::tests::drs_introduce_referent_tracks_source ... ok
[INFO] [stdout] test error::tests::field_not_found_socratic_mentions_type_and_field ... ok
[INFO] [stdout] test error::tests::arity_mismatch_socratic_mentions_function_and_counts ... ok
[INFO] [stdout] test error::tests::infinite_type_socratic_mentions_both_descriptions ... ok
[INFO] [stdout] test error::tests::not_a_function_socratic_mentions_found_type ... ok
[INFO] [stdout] test error::tests::parse_error_has_span ... ok
[INFO] [stdout] test formatter::tests::latex_binary_operators ... ok
[INFO] [stdout] test formatter::tests::latex_counterfactual ... ok
[INFO] [stdout] test error::tests::type_mismatch_detailed_without_context_is_clean ... ok
[INFO] [stdout] test formatter::tests::latex_lambda ... ok
[INFO] [stdout] test formatter::tests::latex_quantifiers ... ok
[INFO] [stdout] test error::tests::type_mismatch_detailed_socratic_mentions_types ... ok
[INFO] [stdout] test formatter::tests::rust_implication_desugaring ... ok
[INFO] [stdout] test error::tests::display_with_source_has_color_codes ... ok
[INFO] [stdout] test formatter::tests::unicode_binary_operators ... ok
[INFO] [stdout] test formatter::tests::latex_sanitization ... ok
[INFO] [stdout] test formatter::tests::unicode_counterfactual ... ok
[INFO] [stdout] test formatter::tests::rust_binary_operators ... ok
[INFO] [stdout] test formatter::tests::rust_quantifiers_as_comments ... ok
[INFO] [stdout] test error::tests::display_with_source_shows_line_and_underline ... ok
[INFO] [stdout] test formatter::tests::unicode_lambda ... ok
[INFO] [stdout] test formatter::tests::unicode_no_sanitization ... ok
[INFO] [stdout] test formatter::tests::unicode_quantifiers ... ok
[INFO] [stdout] test lambda::tests::beta_reduce_nested_lambda ... ok
[INFO] [stdout] test error::tests::display_with_source_suggests_typo_fix ... ok
[INFO] [stdout] test lambda::tests::beta_reduce_non_application_unchanged ... ok
[INFO] [stdout] test lambda::tests::beta_reduce_preserves_unbound_variables ... ok
[INFO] [stdout] test lambda::tests::beta_reduce_simple_predicate ... ok
[INFO] [stdout] test lambda::tests::beta_reduce_with_constant ... ok
[INFO] [stdout] test lambda::tests::factorial_basic ... ok
[INFO] [stdout] test lambda::tests::intensional_transpiles_with_brackets ... ok
[INFO] [stdout] test formatter::tests::rust_lambda ... ok
[INFO] [stdout] test lambda::tests::is_opaque_verb_believes ... ok
[INFO] [stdout] test lambda::tests::enumerate_scopings_no_quantifier ... ok
[INFO] [stdout] test lambda::tests::enumerate_scopings_single_quantifier ... ok
[INFO] [stdout] test lambda::tests::island_constraints_reduce_permutations ... ok
[INFO] [stdout] test lambda::tests::lift_proper_name_returns_lambda ... ok
[INFO] [stdout] test lambda::tests::lift_quantifier_existential_returns_lambda ... ok
[INFO] [stdout] test lambda::tests::lift_quantifier_existential_structure ... ok
[INFO] [stdout] test lambda::tests::is_opaque_verb_seeks ... ok
[INFO] [stdout] test lambda::tests::is_opaque_verb_normal_verbs ... ok
[INFO] [stdout] test lambda::tests::lift_proper_name_applies_predicate ... ok
[INFO] [stdout] test lambda::tests::make_intensional_creates_wrapper ... ok
[INFO] [stdout] test lambda::tests::multiple_quantifiers_per_island ... ok
[INFO] [stdout] test lambda::tests::scope_iterator_exact_size ... ok
[INFO] [stdout] test lambda::tests::scope_iterator_three_quantifiers_yields_six ... ok
[INFO] [stdout] test lambda::tests::substitute_respecting_opacity_allows_outside ... ok
[INFO] [stdout] test lambda::tests::scope_iterator_two_quantifiers_yields_two ... ok
[INFO] [stdout] test lambda::tests::substitute_respecting_opacity_blocks_inside_intensional ... ok
[INFO] [stdout] test lambda::tests::scope_iterator_no_duplicates ... ok
[INFO] [stdout] test lambda::tests::test_application_formatting ... ok
[INFO] [stdout] test lexer::tests::basic_tokenization ... ok
[INFO] [stdout] test lambda::tests::lift_quantifier_universal_returns_lambda ... ok
[INFO] [stdout] test lexer::tests::bus_is_not_verb ... ok
[INFO] [stdout] test lexer::tests::debug_that_token ... ok
[INFO] [stdout] test lexer::tests::himself_tokenizes_as_reflexive ... ok
[INFO] [stdout] test lexer::tests::is_identical_to_tokenizes_as_identity ... ok
[INFO] [stdout] test lexer::tests::itself_tokenizes_as_reflexive ... ok
[INFO] [stdout] test lexer::tests::lexer_handles_apostrophe ... ok
[INFO] [stdout] test lexer::tests::lexer_handles_question_mark ... ok
[INFO] [stdout] test lexer::tests::is_equal_to_tokenizes_as_identity ... ok
[INFO] [stdout] test lambda::tests::lift_quantifier_universal_structure ... ok
[INFO] [stdout] test lambda::tests::test_lambda_formatting_unicode ... ok
[INFO] [stdout] test lexer::tests::lexer_produces_valid_spans ... ok
[INFO] [stdout] test lexer::tests::iff_tokenizes_as_single_token ... ok
[INFO] [stdout] test lambda::tests::test_lambda_app_helper_functions ... ok
[INFO] [stdout] test lexer::tests::open_is_ambiguous ... ok
[INFO] [stdout] test lexer::tests::lowercase_a_is_article ... ok
[INFO] [stdout] test lexer::tests::possessive_apostrophe_s ... ok
[INFO] [stdout] test lexer::tests::to_stay_tokenizes_correctly ... ok
[INFO] [stdout] test lambda::tests::test_lambda_formatting_latex ... ok
[INFO] [stdout] test lexer::tests::ring_is_not_verb ... ok
[INFO] [stdout] test lambda::tests::test_nested_lambda ... ok
[INFO] [stdout] test proof_convert::tests::test_convert_implication ... ok
[INFO] [stdout] test parser::tests::check_any_rejects_non_matching ... ok
[INFO] [stdout] test lexer::tests::triple_quote_produces_string_token ... ok
[INFO] [stdout] test parser::tests::check_any_matches_wh_words ... ok
[INFO] [stdout] test parser::tests::guard_preserves_state_on_commit ... ok
[INFO] [stdout] test parser::tests::guard_restores_all_fields_on_drop ... ok
[INFO] [stdout] test registry::tests::case_insensitive ... ok
[INFO] [stdout] test proof_convert::tests::test_convert_universal ... ok
[INFO] [stdout] test registry::tests::same_word_returns_same_symbol ... ok
[INFO] [stdout] test registry::tests::second_word_same_letter_gets_numbered ... ok
[INFO] [stdout] test proof_convert::tests::test_convert_predicate ... ok
[INFO] [stdout] test style::tests::bold_red_combines_codes ... ok
[INFO] [stdout] test registry::tests::first_word_gets_single_letter ... ok
[INFO] [stdout] test style::tests::red_wraps_string ... ok
[INFO] [stdout] test suggest::tests::find_similar_case_insensitive ... ok
[INFO] [stdout] test session::tests::test_session_basic ... ok
[INFO] [stdout] test session::tests::test_session_multiple_sentences ... ok
[INFO] [stdout] test suggest::tests::levenshtein_empty ... ok
[INFO] [stdout] test suggest::tests::find_similar_no_match ... ok
[INFO] [stdout] test suggest::tests::levenshtein_identical ... ok
[INFO] [stdout] test symbol_dict::tests::test_extract_connective_symbols ... ok
[INFO] [stdout] test suggest::tests::find_similar_typo ... ok
[INFO] [stdout] test suggest::tests::levenshtein_deletion ... ok
[INFO] [stdout] test suggest::tests::levenshtein_insertion ... ok
[INFO] [stdout] test symbol_dict::tests::test_extract_variable_names ... ok
[INFO] [stdout] test suggest::tests::levenshtein_one_char_diff ... ok
[INFO] [stdout] test symbol_dict::tests::test_extract_existential ... ok
[INFO] [stdout] test suggest::tests::levenshtein_transposition ... ok
[INFO] [stdout] test symbol_dict::tests::test_modal_symbols ... ok
[INFO] [stdout] test symbol_dict::tests::test_extract_predicate_names ... ok
[INFO] [stdout] test symbol_dict::tests::test_symbol_has_description ... ok
[INFO] [stdout] test token::tests::modals_contains_all_modal_tokens ... ok
[INFO] [stdout] test symbol_dict::tests::test_no_duplicate_symbols ... ok
[INFO] [stdout] test symbol_dict::tests::test_extract_quantifier_symbols ... ok
[INFO] [stdout] test symbol_dict::tests::test_group_symbols_by_kind ... ok
[INFO] [stdout] test token::tests::span_new_stores_positions ... ok
[INFO] [stdout] test token::tests::span_default_is_zero ... ok
[INFO] [stdout] test token::tests::token_has_span_field ... ok
[INFO] [stdout] test view::expr_view_tests::expr_view_equality_complex ... ok
[INFO] [stdout] test token::tests::wh_words_contains_all_wh_tokens ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_app ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_binary_op ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_predicate ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_quantifier ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_identity ... ok
[INFO] [stdout] test view::expr_view_tests::modal_vector_equality_is_bit_exact ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_unary_op ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_temporal ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_atom ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_lambda ... ok
[INFO] [stdout] test view::expr_view_tests::resolve_expr_modal ... ok
[INFO] [stdout] test view::term_view_tests::nested_function_resolve ... ok
[INFO] [stdout] test view::term_view_tests::resolve_term_constant ... ok
[INFO] [stdout] test view::term_view_tests::resolve_term_function ... ok
[INFO] [stdout] test view::term_view_tests::resolve_term_group ... ok
[INFO] [stdout] test view::term_view_tests::term_view_equality_is_bit_exact ... ok
[INFO] [stdout] test visitor::tests::expr_counter_counts_nested ... ok
[INFO] [stdout] test view::term_view_tests::resolve_term_variable ... ok
[INFO] [stdout] test visitor::tests::variable_collector_finds_variables ... ok
[INFO] [stdout] test view::term_view_tests::resolve_term_possessed ... ok
[INFO] [stderr]    Doc-tests logicaffeine_language
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 180 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test src/debug.rs - debug (line 9) ... ignored
[INFO] [stdout] test src/visitor.rs - visitor (line 11) - compile ... ok
[INFO] [stdout] test src/parser/mod.rs - parser::ParserGuard (line 164) - compile ... ok
[INFO] [stdout] test src/parser/mod.rs - parser (line 33) - compile ... ok
[INFO] [stdout] test src/session.rs - session (line 8) ... ok
[INFO] [stdout] test src/lib.rs - (line 12) ... ok
[INFO] [stdout] test src/compile.rs - compile (line 21) ... ok
[INFO] [stdout] test src/lexer.rs - lexer::Lexer<'a>::new (line 369) ... ok
[INFO] [stdout] test src/lib.rs - (line 48) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.99s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b6fb234b47c2063c88f09881a3477697490a24705ef5c3adc7519f83fc61983f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b6fb234b47c2063c88f09881a3477697490a24705ef5c3adc7519f83fc61983f", kill_on_drop: false }`
[INFO] [stdout] b6fb234b47c2063c88f09881a3477697490a24705ef5c3adc7519f83fc61983f
